package Multithreading.Exercise001;

/**
 * ClassName:Dome003
 * Package:Multithreading
 * Description:
 *
 * @Author:ZhangXin
 * @Create2023/3/5-15:09
 * @Version:v1.0
 */
public class ThreadDome001 {
   //String getName() 返回多线程的名称
   //void setName(String name) 设置线程的名字(构造方法也可以设置名字)
    /*细节：
    * 1.如果我们没有给线程设置名字,线程也是有名字的Thread-X(X序号从0开始)
    * 2.如果我们要给线程设置名字,可以使用set方法进行设置,也可以构造方法设置*/


   //static Thread currentThread() 获取当前线程的对象
    /*细节：
    * 当JVM虚拟机启动之后,会自动启动多条线程
    * 其中有一条线程叫做main线程
    * 它的作用就是去调用main方法,并执行里面的代码
    * 在以前,我们写的代码,其实都是运行main线程当中的*/
   //static void sleep(long time) 让线程休眠指定的时间,单位为毫秒
    /*细节：
    * 1.那条线程执行到这个方法,那条线程就会在这里停留对应的时间
    * 2.方法的参数：就表示睡眠的时间,单位毫秒
    * 3.当时间到了之后,线程会自动醒过来,继续执行下面的其他代码*/
   public static void main(String[] args) throws InterruptedException {
       MyThread t1 = new MyThread("飞机");
       MyThread t2 = new MyThread("坦克");
       t1.start();
       t2.start();

       //static Thread currentThread() 获取当前线程的对象
       //那条线程执行到这个方法,此时获取到的就是那条线程的对象

//       Thread t = Thread.currentThread();
//       String name = t.getName();
//       System.out.println(name);//main


       //static void sleep(long time) 让线程休眠指定的时间,单位为毫秒
       System.out.println("111111111111");
       Thread.sleep(5000);
       System.out.println("222");
   }
}
